Graphic editing deviec, graphic editing mothod and storage medium for storing a program

ABSTRACT

A flowchart containing objects A-C is displayed on a computer screen. Object B is subordinate to object A and object C is subordinate to object B. If a user selects object B, object B is deleted, and simultaneously objects A and C are connected. In this case, object C is subordinate to object A.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a device for deleting an objectfrom a graphic including a plurality of objects connected each other anda method thereof.

[0003] 2. Description of the Related Art

[0004] Recently a variety of flowcharts have often been plotted using acomputer. As software with a function to plot graphics, etc., forexample, “Power Point (Microsoft)”, “Visio (Visio)”, etc., are known.

[0005] For example, a flowchart is used to show the sequence of aworkprocess or the sequence of the process of a software program, andusually includes a plurality of objects and lines/connectors connectingthe plurality of objects.

[0006]FIG. 1A shows examples of flowcharts displayed on the screen of acomputer. In this example, a flowchart in which three objects (objectsA-C) are connected in alphabetical order is shown.

[0007] Lines connecting the objects indicate the order or subordinationrelationship of the objects in the flowchart. For example, line AB(connector connecting objects A and B) starts from the upper rightcorner of the object A. In this case, it is indicated that object A isthe preceding object of object B while object B is the succeeding objectof object A.

[0008] When a flowchart is plotted, there is often a case where a partof objects among objects which are connected with one another should bedeleted during the editing work. For example, it is assumed that objectB located between objects A and C is deleted. In this case, for example,as shown in FIG. 1B, line AB connecting the objects A and B is erased.To erase line AB, for example, two objects which are connected to eachend of line AB are designated or line AB to be erased is designatedafter an erase process is called from an graphics editing menu. Then,similarly, line BC connecting objects Band C is erased, as shown in FIG.1C.

[0009] Then, as shown in FIG. 1D, object B is deleted. In this case, forexample, a process of deleting an object is provided in a menu forediting a graphic. Then, after the position of the object C is shifted,as shown in FIG. 1E, objects A and C are connected, as shown in FIG. 1F.In this way, an arbitrary object can be deleted while a sequence or aconnection order among objects in a flowchart is maintained.

[0010] As described above, a process of deleting a part of object amongobjects which are connected with one another, when a flowchart, etc., isplotted, is a prior art. However, if existing application software isused, the operation often takes a significant amount of time and istroublesome to a user. For example, in the examples shown in FIGS.1A-1F, a user must (a) erase a line connected to an object to bedeleted, (b) delete the target object, and (c) connect the remainingobjects to one another.

[0011] This problem is remarkable, in particular in a graphic whereobjects are complicatedly connected with one another. If there are manylines to be erased or to be newly plotted, the labor and working timeincrease in proportion to the complexity. In addition, a probabilitythat an error may occur in erasing and plotting lines also increases.

[0012] This problem is not limited to application software for plottingflowcharts and can also occur, for example, in software for plottinggraphics or software for plotting circuit diagrams.

SUMMARY OF THE INVENTION

[0013] It is an object of the present invention to simplify an operationrequired when a part of object among a plurality of objects which areconnected with one another is deleted.

[0014] The graphic editing device of the present invention comprises adisplay unit displaying a graphic including the first, second and thirdobjects connected in series, and an editor deleting the second objectand connecting the first and third objects when the second object isselected (or designated).

[0015] The graphic editing device of another feature of the presentinvention comprises the above display unit and an editor deleting thesecond object and connecting the first and third objects when the secondobject is moved to a predetermined area.

[0016] The display unit displays the first to third objects, forexample, on the screen of a computer. The second object is selected onthe screen, for example, by a user's operation.

[0017] As described above, when the second object is selected or whenthe second object is moved to the predetermined area, the editor deletesthe second object and connects the first and third objects. Therefore,when a user deletes a part of object among a plurality of objects whichare connected to one another, there is neither a need for a user todelete lines or connectors connecting the objects or to connect theremaining objects with one another after deleting a target object.

[0018] In the above configuration, a management unit for managing asequence of objects can be provided. In this case, if the second objectis subordinate to the first object and the third object is subordinateto the second object before the second object is deleted, it is managedin such a way that the third object is subordinate to the first object.By adopting this configuration, the sequence or connection order of theremaining objects can be maintained even if a part of object among aplurality of objects which are connected with one another is deleted.

BRIEF DESCRIPTIONS OF THE DRAWINGS

[0019] FIGS. 1A-1F show a method to delete a part of object among aplurality of objects which are connected to one another, using theexisting method.

[0020]FIG. 2 shows an example of an environment where the presentinvention is put to a practical use.

[0021]FIGS. 3A and 3B show how to edit a graphic in the firstembodiment.

[0022] FIGS. 4A-4C show tables provided by the graphic editing softwarein the first embodiment.

[0023] FIGS. 5A-5D show working tables temporarily used when a displayedgraphic is edited.

[0024]FIG. 6 shows the basic sequence of an object deletion process.

[0025]FIGS. 7A and 7B show a process of updating a table (No. 1).

[0026]FIGS. 8A and 8B show a process of updating a table (No. 2).

[0027]FIGS. 9A and 9B show a process of updating a table (No. 3).

[0028]FIGS. 10A and 10B show a process of updating a table (No. 4).

[0029] FIGS. 11A-11C show examples of updated tables.

[0030]FIGS. 12A and 12B show examples of graphic editing in the secondembodiment.

[0031] FIGS. 13A-13C show examples of tables showing a graphic beforethe deletion of an object.

[0032]FIGS. 14A and 14B show processes of updating a table (No. 1).

[0033]FIGS. 15A and 15B show processes of updating a table (No. 2).

[0034]FIGS. 16A and 16B show processes of updating a table (No. 3).

[0035]FIG. 17 shows a process of updating a table (No. 4).

[0036] FIGS. 18A-18C show examples of updated tables.

[0037]FIG. 19 is a flowchart showing a user's operation.

[0038]FIG. 20 is a basic flowchart showing the operation of the graphicediting software.

[0039]FIG. 21 is a flowchart showing a process of detecting a selectedobject.

[0040]FIG. 22 is a flowchart showing a process of updating graphic data.

[0041]FIG. 23 is a flowchart showing a process of updating a data table.

[0042]FIG. 24 is a flowchart showing a process of generating both afront information table and a rear information table.

[0043]FIG. 25 is a flowchart showing a process of generating informationabout a new line.

[0044]FIG. 26 is a flowchart showing a process of updating a lineinformation table.

[0045]FIG. 27 is a flowchart showing a deletion process.

[0046]FIG. 28 shows an example of a graphic displayed using absolutecoordinates.

[0047]FIG. 29 is a basic flowchart showing the deletion process of thethird embodiment.

[0048] FIGS. 30A-30C show examples of deletion processes required when aplurality of objects are connected in series below an object to bedeleted.

[0049]FIGS. 31A and 31B show processes required when a plurality ofobjects are simultaneously selected.

[0050] FIGS. 32A-32C show how to edit in the second embodiment (No. 1).

[0051] FIGS. 33A-33C show how to edit in the second embodiment (No. 2).

[0052] FIGS. 34A-34C show how to edit in the second embodiment (No. 3).

[0053]FIG. 35A shows an example of an object information table.

[0054]FIG. 35B shows an example of a line information table.

[0055]FIG. 36 is a flowchart showing the operation of the graphicediting software of the second embodiment.

[0056]FIG. 37 shows the configuration of a computer for executing aprogram which describes the editing method of the present invention.

[0057]FIG. 38 shows how to provide the software program of the presentinvention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0058] A graphic editing method of the present invention relates to amethod for editing graphics, etc., displayed on the screen of a computer1 shown in FIG. 2. Although a graphic, etc., is basically edited by auser's operation using a mouse 2, it can also be edited by aninstruction inputted using another input device. In the description ofthe following embodiments, a flowchart is edited as an example of agraphic, using the method of the present invention. In the flowchart, agraphic unit corresponding to each step of a flowchart is handled as one“object”.

[0059] The First Embodiment

[0060]FIGS. 3A and 3B show how to edit a graphic in the firstembodiment. Here, a case where object B located between objects A and Cis deleted while a graphic (flowchart) in which objects A, B and C areconnected in that order, is displayed. It is assumed that the graphicediting software of the first embodiment provides virtual coordinatessystem for displaying objects and that each object is displayed usingthe coordinate system.

[0061] When object B located between objects A and C is deleted in astate shown in FIG. 3A, a user first selects (or designates) object B.For example, a target object can be selected by directly clicking on theobject using a mouse or by designating a range using a mouse. If objectsare selected by designating a range, one or more objects existing withinthe designated range are to be selected.

[0062] Object B is connected to objects A and C by lines AB and BC,respectively. Here, since line AB starts from the upper right corner ofobject A, it is indicated that object A is the preceding object ofobject B and object B is the succeeding object of object A. Similarly,it is indicated that object B is the preceding object of object C andobject C is the succeeding object of object B. A “line” is sometimescalled a “connector”.

[0063] Then, a user instructs an execution of a deletion process. Thisdeletion process is executed, for example, using a function provided bygraphic editing software. The graphic editing software usually has afunction in a menu to delete a component, including an object, selectedby a user.

[0064] If the deletion process is executed while object B is selected,as shown in FIG. 3B, object B is deleted from the graphic. In this case,a line connecting objects A and C is automatically generated. Thedisplay position of object C is automatically shifted leftward in such away that the distance between objects A and C is appropriate.

[0065] In this way, according to the editing method of the firstembodiment, a part of object among a plurality of objects which aresequentially connected is deleted only by selecting a target object andby inputting an instruction to delete the selected object. By thisoperation, the remaining objects are automatically connected while theconnection order among the objects before the deletion is maintained,and each object is automatically relocated.

[0066] Next, the editing method of the first embodiment is described indetail. In this case it is assumed that objects A-C are displayed atcoordinates, (X, Y)= (000, 000), (001, 000) and (002, 000),respectively, in a virtual coordinate system.

[0067] FIGS. 4A-4C show examples of tables provided by the graphicediting software of the first embodiment. Information stored in thesetables indicates a display state of a graphic plotted by the graphicediting software of the first embodiment. In other words, a graphicplotted by the graphic editing software is displayed according toinformation stored in the tables.

[0068]FIG. 4A shows an example of an object information table 11. “Array1” is an identification number for identifying a displayed object.“Display information” is information displayed on each object or thelabel name. “Position information” is key information to retrieve detailinformation for corresponding object from a data table 13 describedlater. If a new object is generated, a corresponding record is added tothis table. If an object is deleted, a corresponding record is deletedfrom this table.

[0069]FIG. 4B shows an example of a line information table 12. “Array 2”is an identification number for identifying a line connecting displayedobjects. “Front information” is information for designating objectslocated ahead of each line. “Rear information” is information fordesignating objects located behind each line. Both “front information”and “rear information” designate an object using a value in “array 1” ofthe object information table 11.

[0070]FIG. 4C shows an example of a data table 13. “Array 4” is anidentifier to retrieve detail information for corresponding objectregistered in the object information table 11. “Data name” designatesinformation for displaying corresponding object. “Preceding information”is information for indicating an object preceding each object.“X-coordinate” and “Y-coordinate” are the coordinates of a positionwhere each object is displayed, and, in this example, the position isindicated using a virtual coordinate system.

[0071] The contents of the tables shown in FIGS. 4A-4C correspond to thedisplay states of the graphic shown in FIG. 3A. That is to say, objectsA, B and C are displayed according to the object information table 11shown in FIG. 4A. Objects A, B and C are displayed at coordinates (X,Y)=(000, 000), (001, 000) and (002, 000), respectively, according to thedata table 13 shown in FIG. 4C.

[0072] In the record of “array 2=11” of the line information table 12shown in FIG. 4B, a line connecting an object registered in the recordof “array 1=01” with an object registered in the record of “array 1=02”, is registered. In this case, as shown in FIG. 4A, objects A and Bare registered in records of the “array 1=01” and “array 1=02”,respectively. Therefore, a line connecting objects A and B or line AB isplotted according to information registered in a record of “array 2=11”.Similarly, a line connecting objects B and C or line BC is plottedaccording to information registered in a record of “array 2=12”. Thesequence (or connection order) among the objects is determined accordingto “front information” and “rear information” registered in the lineinformation table.

[0073] FIGS. 5A-5D show examples of working tables temporarily used whena displayed graphic is edited. FIG. 5A shows a selection table 21.“Array 0” identifies an object selected by a user. FIG. 5B shows a newline information table 22. “Array 2 a” identifies a new line to beplotted. FIG. 5C shows a front information table 23. “Array 3 a”identifies an object connected ahead of the object selected by the user.FIG. 5D shows a rear information table 24. “Array 3 b” identifies anobject connected behind the object selected by the user.

[0074] Next, the basic sequence when an object is deleted, is describedwith reference to FIG. 6. This sequence shows an operation after a userselects a target object. Parenthesized numeric characters in FIG. 6correspond to process numbers used in the following description. Forexample, “(1)” shown in FIG. 6 corresponds to “process 1” in thefollowing description.

[0075] Process 1: An object selected by a user (target object to bedeleted) is specified. The selected object is registered in theselection table.

[0076] Process 2: A record in which the target object is registered as“preceding information” is extracted from a data table and the“preceding information” and “coordinates” of the record are updated.Here, process 2 includes processes 2-1 to 2-3.

[0077] Process 2-1: A record corresponding to the target objectregistered in the selection table is extracted from the data table. Inthis case, the data table is accessed using the value in “array 0” as akey.

[0078] Process 2-2: A record having “preceding information” matching the“data name” of the record extracted in process 2-1 is extracted.

[0079] Process 2-3: The “preceding information”, “X-coordinate” and“Y-coordinate” of the record extracted in process 2-1 are written in the“preceding information”, “X-coordinate” and “Y-coordinate”,respectively, of the record extracted in process 2-2.

[0080] Process 3: Lines connected to the target object is specified.Process 3 includes processes 3-1 and 3-2.

[0081] Process 3-1: A line connecting the target object with an objectpreceding the target object is specified. In this case, the rearinformation field of the line information table is accessed using thevalue in “array 1” as a key.

[0082] Process 3-2: A line connecting the target object with an objectsucceeding the target object is specified. In this case, the frontinformation field of the line information table is accessed using thevalue in “array 1” as a key.

[0083] Process 4: An object preceding the target object is registered ina front information table. In this case, the “front information”obtained in process 3-2 is registered in the front information table.

[0084] Process 5: An object succeeding the target object is registeredin a rear information table. In this case, the “rear information”obtained in process 3-1 is registered in the rear information table.

[0085] Process 6: A new line to be plotted is registered in a new lineinformation table. Specifically, a line connecting the object registeredin the front information table with the object registered in the rearinformation table is registered in the new line information table. If aplurality of objects are registered in the front information table orrear information table, lines connecting the each of the objects areregistered in the new line information table. Therefore, if n objectsand m objects are registered in the front information table and rearinformation table, respectively, n×m lines are registered in the newline information table.

[0086] Process 7: The line registered in the new line information tableis written in the line information table. Specifically, the informationregistered in the record accessed in process 3-1 or process 3-2 isreplaced with the information registered in the new line informationtable.

[0087] Process 8: The record corresponding to the target object isdeleted from the object information table and the data table.

[0088] Process 9: Working tables are initialized. Specifically, the newline information table, front information table and rear informationtable are initialized, and after all processes are completed, theselection table is initialized.

[0089] Then, after executing processes 1 to 9 described above, thegraphic editing software plots a graphic according to the informationregistered in the object information table, line information table anddata table. In this way, a graphic from which the object selected by theuser is deleted, is displayed. In this case, a sequence of the objectsto be displayed, which was defined before the target object was deletedby the user, is maintained.

[0090] Next, a specific example of a process of deleting an object usingthe graphic editing method of the first preferred embodiment isdescribed.

[0091] The first example

[0092] In the first example, a process of obtaining the state shown inFIG. 3B by deleting object B in the state shown in FIG. 3A, isdescribed. In this case, when the graphic shown in FIG. 3A is displayed,an object information table, a line information table and a data tableare in the states shown in FIGS. 4A, 4B and 4C, respectively.

[0093] If object B should be deleted, a user selects object B andinstructs the execution of a deletion process. Although a method forselecting a desired object is not limited to a specific one, the object,for example, can be selected by a mouse operation. The process orderbetween selecting an object and instructing the execution of thedeletion process is not limited to a specific one. For example, thegraphic editing software of the first embodiment can be configured toselect a target object after receiving a delete instruction.

[0094] When the user selects object B, the graphic editing softwareexecutes processes 1 to 9 described above with reference to FIG. 6.

[0095] Process 1: When a user selects object B, the graphic editingsoftware registers object B in the selection table 21. Specifically,“02”, which is a value for identifying object B in the objectinformation table 11 is registered in the selection table 21. Therefore,when object B is selected, the selection table 21 shown in FIG. 5A isgenerated.

[0096] Process 2: The graphic editing software extracts a record for anobject which is connected behind object B, and updates the “frontinformation” and “coordinates” of the extracted record. In this case,the “front information” and “coordinates” of object B are written in the“front information” and “coordinates” of the extracted record.Specifically, process 2-1 to process 2-3 are executed.

[0097] Process 2-1: As shown in FIG. 7A, the graphic editing softwareaccesses the object information table 11 using “array 0=02” registeredin the selection table 21 as a key and extracts a corresponding record.Then, the software accesses the data table 13 using “positioninformation=102” as a key and extracts a corresponding record.

[0098] Process 2-2: The graphic editing software retrieves data from thefront information field of the data table 13, using the “data name=b” ofthe record extracted in process 2-1 as a key and extracts the recordregistering “preceding information=b”.

[0099] Process 2-3: In the data table 13, as shown in FIG. 7B, thegraphic editing software replaces the “preceding information” and“coordinates” of the record extracted in process 2-2 with “precedinginformation” and “coordinates”, respectively, of the record extracted inprocess 2-1. Here, if the objects are horizontally connected,“X-coordinate” is updated. If the objects are vertically connected,“Y-coordinate” is updated. Therefore, as shown in FIG. 7B, in a recordof “array 4=103”, “preceding information” is updated from “b” to “a” and“X-coordinate” is updated from “002” to “001”.

[0100] Process 3: The graphic editing software specifies lines connectedto the object B. Specifically, the software extracts both of a record inwhich the object B is registered as “rear information” and a record inwhich the object B is registered as “front information” from the lineinformation table 12. Specifically, the software executes process 3-1and process 3-2.

[0101] Process 3-1: As shown in FIG. 8A, the graphic editing softwaresearches a record from the rear information field of the data table 13using “array 1=02” as a key, and extracts the record registering “rearinformation=02”. In this way, a record specified by “array 2=11” isextracted.

[0102] Process 3-2: As shown in FIG. 8A, the graphic editing softwaresearches a record from the front information field of the data table 13using “array 1=02” as a key, and extracts the record registering “frontinformation=02”. In this way, a record specified by “array 2=12” isextracted.

[0103] Process 4: The graphic editing software registers an object whichprecedes object B in the front information table 23. Specifically, asshown in FIG. 8B, “front information=01” of the record extracted inprocess 3-2 is registered in the front information table 23.

[0104] Process 5: The graphic editing software registers an object whichsucceeds object B in the rear information table 24. Specifically, “rearinformation=03” of the record extracted in process 3-1 is registered inthe rear information table 24.

[0105] Process 6: The graphic editing software registers a new line tobe plotted in the new line information table. Specifically, the softwareregisters objects which are connected to the new line to be plotted.Specifically, as shown in FIG. 9A, both “front information=01”,registered in the front information table 23, and “rear information=03”,registered in the rear information table 24, are registered in the newline information table 22.

[0106] Process 7: The graphic editing software writes informationregistered in the new line information table 22 in the line informationtable 12. Specifically, as shown in FIG. 9B, in the line informationtable 12, information registered in each record accessed in process 3-1or process 3-2 is replaced with information registered in the new lineinformation table 22. In this way, a line connecting “frontinformation=01 (object A)” with “rear information=03 (object C)” isregistered in the line information table 12.

[0107] Process 8: As shown in FIG. 10A, the graphic editing softwaredeletes records corresponding to the object B from the objectinformation table 11 and data table 13.

[0108] Process 9: The graphic editing software initializes workingtables used when object B is deleted. Specifically, as shown in FIG.10B, the software deletes the respective records of the new lineinformation table 22, front information table 23 and rear informationtable 24, and after all other processes are completed, the softwarefurther deletes information registered in the selection table 21.

[0109] FIGS. 11A-11C show examples of the object information table 11,line information table 12 and data table 13 that are updated inprocesses 1-9 described above. The graphic editing software plots agraphic according to information registered in these updated tables.Specifically, objects A and C are displayed at coordinates (X, Y=000,000) and (X, Y= 001, 000), respectively, according to the objectinformation table 11 shown in FIG. 11A and data table 13 shown in FIG.11C. A line connecting the objects A and C is plotted according to theline information table 12 shown in FIG. 11B. In this case, the sequenceof objects A and C is registered in the line information table 12.Specifically, object A is the preceding object of object C, and object Cis the succeeding object of object A. In this way, the graphic shown inFIG. 3B is obtained.

[0110] In the above example, a graphic is plotted according to a rulethat a flow of objects is expressed using an X-coordinate. Therefore,when object B located between objects A and C is deleted, object C ishorizontally shifted. However, the present invention is not limited tothis configuration. For example, in a graphic which is plotted accordingto a rule that a flow of objects is expressed using a Y-coordinate,object C can be shifted vertically when object B located between objectsA and C is deleted.

[0111] In this case, the shift direction of an object is determined, forexample, by comparing the coordinate of an object selected by a userwith the coordinate of an object next to the selected object. Forexample, if the Y-coordinate of an object selected by a user with theY-coordinate of an object next to the selected are the same, the objectis horizontally shifted. If the respective X-coordinates of the objectsare the same, the object is vertically shifted.

[0112] The second example

[0113] The second example shows a process of obtaining a graphic shownin FIG. 12B by deleting object C in a graphic shown in FIG. 12A. In thiscase, when the graphic shown in FIG. 12A is displayed, the objectinformation table, line information table and data table are in thestates shown in FIGS. 13A, 13B and 13C, respectively.

[0114] If a user selects object C, the graphic editing software executesprocesses 1-9 described above with reference to FIG. 6.

[0115] Process 1: When a user selects object C, the graphic editingsoftware registers object C in the selection table 21. Specifically,“03”, which is a value for identifying object C in the objectinformation table 11, is registered in the selection table 21.

[0116] Process 2: The graphic editing software extracts records forobjects connected below object C from the data table 13 and updates“front information” and “coordinates” of each record. In this case, the“front information” and “coordinates” of object C are written in “frontinformation” and “coordinates” of each record, respectively.Specifically, processes 2-1 to 2-3 are executed.

[0117] Process 2-1: As shown in FIG. 14A, the graphic editing softwareaccesses the object information table 11 using “array 0=03” registeredin the selection table 21 as a key and extracts corresponding records.Then, the software accesses the data table 13 using the “positioninformation=103” resistored in the extracted record as a key andextracts corresponding records.

[0118] Process 2-2: The graphic editing software retrieves data from thefront information field of data table 13, using “data name=c” of therecord extracted in process 2-1 and extracts records registering“preceding information=c”. In this way, three records are extracted, asshown in FIG. 14A.

[0119] Process 2-3: In data table 13, the graphic editing softwarereplaces “preceding information” and “coordinates” of each recordextracted in process 2-2 with “preceding information” and “coordinates”,respectively, of the record extracted in process 2-1. In this way, asshown in FIG. 14B, in the respective records of “array 4=104”, “array4=105” and “array 4=106”, “preceding information” is updated from “c” to“a, b”, and simultaneously “X-coordinate” is updated from “002” to“001”.

[0120] Process 3: The graphic editing software specifies lines connectedto object C. Specifically, the software extracts both recordsregistering object C as “rear information” and records registeringobject C as “front information” from the line information table 12.Specifically, processes 3-1 and 3-2 are executed.

[0121] Process 3-1: As shown in FIG. 15A, the graphic editing softwareretrieves data from the rear information field of the data table 13using “array 1=03” as a key and extracts records registering “rearinformation=03”. In this way, a record specified by “array 2=11” and arecord specified by “array 2= 12” are extracted from the data table 13.

[0122] Process 3-2: As shown in FIG. 15A, the graphic editing softwareretrieves data from the front information field of the data table 13using “array 1=03” as a key and extracts records registering “frontinformation=03”. In this way, a record specified by “array 2=13”, arecord specified by “array 2=14” and a record specified by “array 2=15”are extracted from the data table 13.

[0123] Process 4: The graphic editing software registers objectspreceding object C in the front information table 23. Specifically, asshown in FIG. 15B, “front information=01” and “front information= 02”registered in each record extracted in process 3-2 are registered in thefront information table 23.

[0124] Process 5: The graphic editing software registers objectssucceeding object C in the rear information table 24. Specifically, asshown in FIG. 15B, “rear information=04”, “rear information=05” and“rear information=06” that are registered in each record extracted inprocess 3-1 are registered in the rear information table 24.

[0125] Process 6: The graphic editing software registers new lines to beplotted in the new line information table. Specifically, as shown inFIG. 16A, lines obtained by combining objects registered in the frontinformation table 23 and objects registered in the rear informationtable 24 are registered in the new line information table 22. In thisexample, since two objects and three objects are registered in the frontinformation table 23 and rear information table 24, respectively, sixlines are registered in the new line information table 22.

[0126] Process 7: The graphic editing software writes informationregistered in the new line information table 22, in the line informationtable 12. Specifically, as shown in FIG. 16B, in the line informationtable 12, information registered in the records accessed in processes3-1 or 3-2 is replaced with information registered in the new lineinformation table 22. In this way, six lines are registered in the lineinformation table 12. Specifically, a line connecting “frontinformation=01 (object A)” with “rear information 04 (object D)”, a lineconnecting “front information=01 (object A)” with “rear information=05(object E)”, a line connecting “front information 01 (object A)” with“rear information= 06 (object F)”, a line connecting “forward=02 (objectB)” and “rear information=04 (object D)”, a line connecting “frontinformation=02 (object B)” with “rear information=05 (object E)” and aline connecting “front information=02 (object B)” with “rearinformation=06 (object F)” are registered.

[0127] Process 8: As shown in FIG. 17, the graphic editing softwaredeletes records corresponding to object C from both the objectinformation table 11 and data table 13.

[0128] Process 9: The graphic editing software initializes workingtables used to delete object C. Specifically, the respective records ofthe new line information table 22, front information table 23 and rearinformation table 24 are deleted, and after all other processes arecompleted, information registered in the selection table 21 is deleted.

[0129] FIGS. 18A-18C show respective examples of the object informationtable 11, line information table 12 and data table 13 that are updatedin processes 1-9 described above. The graphic editing software plots agraphic according to information registered in the updated tables.Specifically, objects A, B, D, E and F registered in the objectinformation table 11 shown in FIG. 18A are displayed in the positionsregistered in the data table 13 shown in FIG. 18C. Six lines are plottedaccording to the line information table 12 shown in FIG. 18B. In thisway, the graphic shown in FIG. 12B is obtained.

[0130] Flowcharts showing the editing method of the first embodiment

[0131]FIG. 18 is a flowchart showing a user's operation. In step S1, auser selects an object. In step S2, the user inputs an instruction todelete the selected object. The method for selecting an object and themethod for inputting the instruction are as described above. Inaddition, as described above, the operation order of selecting an objectand instructing the execution of the deletion process can be reverseddepending on the graphic editing software program.

[0132] In this way, when an object is deleted in a graphic, using thegraphic editing software of this embodiment, there is no need for a userto delete lines connecting objects and to connect the remaining objects.Therefore, the operation is simple.

[0133]FIG. 20 is a basic flowchart showing the operation of the graphicediting software. The process shown by this flowchart is executed when atarget object is selected by a user. In step S11, the graphic editingsoftware detects the object selected by the user. In step S12, thesoftware updates graphic data. Graphic data include at least informationregistered in the tables shown in FIGS. 4A-4C. In step S13, the softwaredisplays a graphic based on the data updated in step S12.

[0134]FIG. 21 is a flowchart showing a process of detecting the selectedobject. The process corresponds to the process in step S11 shown in FIG.20. In step S21, the software detects the object selected by the user.In step S22, the software registers the object detected in step S21 inthe selection table. In this way, one or more objects selected by theuser are registered in the selection table.

[0135]FIG. 22 is a flowchart showing a process of updating graphic data.The process corresponds to the process in step S12 shown in FIG. 20.This process is executed for each object registered in the selectiontable. That is to say, this process is executed for each object selectedby the user.

[0136] In step S31, one of the objects registered in the selection tableis obtained. In step S32, the object obtained in step S31 is specifiedby referring to the object information table. Then, steps S33-S37 areexecuted for the specified object.

[0137] In step S33, a data table is updated. This process corresponds toprocess 2 described with reference to FIG. 6. In step S34, a frontinformation table and a rear information table are generated. Thisprocess corresponds to processes 3-5 described above. In step S35, lineinformation for a new line is generated. This process corresponds toprocess 6 described above. In step S36, a line information table isupdated. This process corresponds to process 7 described above. In steps37, a deletion process is executed. This process corresponds toprocesses 7 and 9 described above. Step S38 is a process of executingsteps S32-S37 for all the objects registered in the selection table.

[0138]FIG. 23 is a flowchart showing a process of updating a data table.This process corresponds to the process in step S33 shown in FIG. 22. Instep S41, “position information” corresponding to a specified object isobtained from an object information table. In step S42, “array 4”corresponding to the “position information” obtained in step S41 isobtained from the data table. In step S43, “data name” corresponding to“array 4” obtained in step S42 is obtained.

[0139] In step S44, the preceding information field of the data table issearched and a record recording “preceding information” that matches the“data name” obtained in step S43 is extracted. If such a record isobtained, the flow proceeds to step S45. If it is not obtained, theprocess is terminated.

[0140] In step S45, it is checked whether the shift direction of theobject is vertical or horizontal. For example, in the example shown inFIG. 3 or 12, the shift direction of the object is horizontal. If theshift direction of the object is vertical, in step S46, the “precedinginformation” and “Y-coordinate” of each record extracted in step S44 areupdated. If the shift direction of the object is horizontal, in stepS47, the “preceding information” and “X-coordinate” of each recordobtained in step S44 are updated. In steps 46 or 47, “precedinginformation” and “coordinate” are replaced with “preceding information”and “coordinate” of the record specified by “array 4” obtained in step42. Step S48 is a process of executing steps S44-S47 for all elementsregistered in the front information field.

[0141] In this way, information for designating the display position ofobjects connected behind the object selected by a user is updated. Inthis case, the connection order or connection relationship among objectsin the graphic does not change between before and after the objectselected by the user is deleted.

[0142]FIG. 24 is a flowchart showing a process of generating a frontinformation table and a rear information table. This process correspondsto the process in step S34 shown in FIG. 22. In step S51, “array 1” foridentifying an object specified in an object information table isobtained. In step S52, it is checked whether in a line information tablethere is “front information” or “rear information” that matches “array1” obtained in step S51. If there is “front information” or “rearinformation” matching “array 1”, in step S53, it is judged which matches“array 1”, “front information” or “rear information”.

[0143] If “array 1” matches “rear information”, in step S54, “array 2”and “front information” are obtained from records registering the “rearinformation”. Then, in step S55, the “array 2” and “front information”are registered in a front information table. If “array 1” does not match“rear information”, in step S56, “array 2” and “rear information” areobtained from records registering “front information” that matches“array 1”. Then, in step S57, the “array 2” and “rear information” areregistered in a rear information table. Step S58 is a process ofexecuting steps S52-S57 for all lines connected to the specified object.

[0144] In this way, objects connected to the object selected by a userare listed. In this case, objects located a head of the selected objectand objects located behind the selected object are classified intodifferent groups.

[0145]FIG. 25 is a flowchart showing a process of generating informationfor new lines. This process corresponds to the process in step S35 shownin FIG. 22 . In step S61, one set of “front information” is obtainedfrom the top of a front information table. In step S62, one set of “rearinformation” is obtained from the top of a rear information table. Instep S63, the obtained “front information” and “rear information” areregistered in a new line information table.

[0146] Step S64 is a process for returning to step S62 and obtainingsubsequent “rear information” when there remains “rear information” forwhich a process in step S63 is not executed. Step S65 is a process forreturning to step S61 and obtaining subsequent “front information” whenthere remains “front information” for which processes in steps S62 andS63 are not executed. In this way, new lines to be plotted aredetermined.

[0147]FIG. 26 is a flowchart showing a process of updating a lineinformation table. This process corresponds to the process in step S36shown in FIG. 22 . In step S71, “array 1” for identifying an objectspecified in an object information table is obtained. In step S72, it ischecked whether there is “front information” or “rear information” thatmatches “array 1” obtained in step S71.

[0148] If there is “front information” or “rear information” thatmatches “array 1”, in step S73, it is checked whether data areregistered in a new line information table. If data are registered inthe new line information table, instep S74, the data of records in theline information table registering “front information” or “rearinformation” that matches “array 1” are replaced with the data of thenew line information table. If data are not registered in the new lineinformation table, in step S75, records in the line information tableregistering “front information” or “rear information” that matches“array 1” are deleted.

[0149] If there is neither “front information” nor “rear information”that matches “array 1”, in step S76, it is checked whether data areregistered in the new line information table. If data are registered inthe new line information table, in step S77, the data of the new lineinformation table are added to the line information table.

[0150] In this way, new lines to be plotted are registered in the lineinformation table. In this case, lines, the display of which is madeunnecessary by deleting the object selected by a user, are deleted fromthe line information table.

[0151]FIG. 27 is a flow chart showing a deletion process. This processcorresponds to the process in step S37 shown in FIG. 22. In step S81, arecord corresponding to a specified object is deleted from an objectinformation table. In step S82, a record corresponding to a specifiedobject is deleted from a data table. In step S83, a new line informationtable is cleared (initialized). In step S84, a front information tableis cleared. In step S85, a rear information table is cleared. In stepS86, a selection table is cleared. In this way, information fordisplaying an object selected by a user is deleted.

[0152] The third example

[0153] In the first and second examples described above, a graphic isdisplayed using a virtual coordinate system, and each object is locatedin each box provided by virtual coordinates. However, in the thirdexample, a graphic is displayed using a coordinate system (hereinaftercalled “absolute coordinates”) corresponding to the structure of ascreen for displaying the graphic plotted by the graphic editingsoftware.

[0154]FIG. 28 shows an example of a graphic displayed using absolutecoordinates. This graphic contains objects A-C. Objects A and B areconnected by line D. Objects B and C are connected by line E. In thisexample, all the objects are assumed to be rectangles. Information fordisplaying an object includes coordinate data in the upper left corner,and height data and width data of each object. Information forindicating the position of an object is not limited to coordinates inthe upper left corner of each object, and for example, the coordinatesof the center of each object can be used. Information for indicating aline includes the start point coordinate data, end point coordinate dataand length data of each line. In the example shown in FIG. 28, althoughlength data are indicated by the difference in the Y-coordinate betweenstart and end points, in a graphic where objects are horizontallyconnected, length data are indicated by the difference in theX-coordinate between start and end points.

[0155] It is assumed that object B is deleted in the graphic describedabove. According to the method of the third example, if object B isdeleted, only either line D or E is deleted. For example, if line D isdeleted, objects A and C are connected by line E by shifting of line Eand object C toward object A. If line E is deleted, objects A and C areconnected by line D by shifting of object C toward object A.

[0156]FIG. 29 is a basic flowchart showing the object deletion processof the third example. The process shown by this flowchart is executedwhen a user selects an object.

[0157] In step S91, lines to be deleted are determined. A line to bedeleted that is connected to an object selected by a user is determinedbased on “line length” or “line length+size of object to be deleted”. Ifa line to be deleted is determined based on “line length” when object Bis deleted in the graphic shown in FIG. 28, lines “LDH” and “LEH” arecompared, and the shorter one is deleted. If a line to be deleted isdetermined based on “line length+size of object to be deleted”, “LDH+BH”and “LEH+BH” are compared, and a line with the smaller value is deleted.

[0158] In step S92, position information for indicating a position wherea line is plotted is updated. In this case, if objects are verticallyconnected in a graphic, the Y-coordinate is updated. If they arehorizontally connected, the X-coordinate is updated. A line, whosedisplay position should be updated, is basically provided below theobject to be deleted.

[0159] Instep S93, position information for indicating a position wherean object is displayed is updated. In this case, if objects arevertically connected in a graphic, the Y-coordinate is updated. If theyare horizontally connected in a graphic, the X-coordinate is updated. Anobject, whose display position is updated, is basically located belowthe object to be deleted. Then, in step S94, a graphic is plottedaccording to the position information updated in steps S92 and S93.

[0160] Specific examples are shown below.

[0161] (1) In case “LDH”<“LEH”

[0162] In this case, line D is deleted. Then, line E and object C areshifted by “length of line D+height of object B”. Specifically, displayinformation about line E is updated as follows.

[0163] Startpoint: (LEsx, LEsy)→(LEsx, LEsy-LDH-BH)

[0164] End point: (LEex, LEey)→(LEex, LEey-LDH-BH)

[0165] Length: LEH→LEH

[0166] Display information about object C is updated as follows.

[0167] Upper left coordinates: (CL, CT)→(CL, CT-LDH-BH)

[0168] Height: CH→CH

[0169] Width: Cw→Cw

[0170] (2) In case “LDH”>“LEH”

[0171] In this case, line E is deleted. Then, object C is shifted by“length of line E+height of object B”. Specifically, display informationabout object C is updated as follows.

[0172] Upper left coordinates: (CL, CT)→(CL, CT-LEH-BH)

[0173] Height: CH→CH

[0174] Width: Cw→Cw

[0175] (3) In case “LDH”=“LEH”

[0176] In this case, either (1) or (2) is executed according to apredetermined algorithm.

[0177] In this way, in the first and second examples, when a specificobject is deleted, all lines connected to the object are deleted and newlines connecting the remaining objects with one another are generated.However, in the third example, the number of lines to be deletedfollowing the object deletion is a minimal.

[0178] In the first to third examples, if a plurality of objects areconnected in series below an object to be deleted, the display positionsof the plurality of objects connected in series are all shiftedfollowing the object deletion, which is not explained in order tosimplify the description.

[0179] For example, a graphic shown in FIG. 30A is taken. In thisgraphic, objects A-E are connected in series. In this case, as shown inFIG. 30B, if object B is deleted, objects C-E are all shifted upward. Inthis case, the graphic editing software executes the following processeswhen recognizing the selection of object B.

[0180] (1) The graphic editing software refers to a data table anddetects a record registering object B as “preceding information”.

[0181] (2) The software refers to the data table and searches for arecord registering the object detected in (1) described above as“preceding information”.

[0182] (3) When a record is detected in (2) described above, thesoftware returns to (2) and further searches for subsequent records.

[0183] In the example shown in FIG. 30B, object C is detected in (1),and objects D and E are detected by repeating (2) and (3) describedabove. Then, object B is deleted from an object information table and“Y-coordinates” of objects C-E are updated in the data table. In thiscase, it is assumed that a line connecting objects A and C is registeredin a line information table. In this way, a graphic shown in FIG. 30C isdisplayed.

[0184] If a plurality of objects are simultaneously deleted, a userselects a range containing the plurality of objects, for example, usinga mouse, etc., as shown in FIG. 31A, which is not shown in the exampledescribed above. In this example, objects C and E are simultaneouslyselected. If a plurality of objects are simultaneously selected by auser in this way, the graphic editing software registers the pluralityof objects in the selection table. Then, the software executes theprocesses described above for each object. Specifically, objects B and Dare connected by deleting object C, and objects B and F are connected bydeleting object D. In this way, a graphic shown in FIG. 31B is obtained.

[0185] The Second Embodiment

[0186] According to the editing method of the first embodiment describedabove, if a user wants to delete an object, the user must select anobject to be deleted and designate the execution of a deletion process.However, according to the editing method of the second embodiment, theobject is deleted by moving a target object to be deleted to aprescribed position. In this case, the sequence (connection order) ofthe remaining objects, which was defined before the deletion of thetarget object, is maintained.

[0187]FIGS. 32A and 32B show the editing method of the secondembodiment. According to this editing method, the graphic editingsoftware provides (displays) a discard area 31 on the display screen.Then, when a component, including an object and a line, that composes agraphic is located in the discard area 31, the graphic editing softwaredeletes the component.

[0188] It is assumed that object B is deleted from the graphic shown inFIG. 32A. In this case, for example, as shown in FIG. 32B, a user dragsobject B and drops the object in the discard area 31. When detecting theoverlap of the discard area 31 and object B, the graphic editingsoftware deletes object B and simultaneously connects objects A and C,as shown in FIG. 32C.

[0189] If the distance between objects remaining after the deletion of aspecific object is too large, the graphic editing software modifies thedistance between the objects appropriately by modifying the positions ofthe objects. For example, as shown in FIGS. 33A and 33B, if the distancebetween objects A and C is larger than a predetermined value when objectB is dragged and dropped in the discard area 31, the graphic editingsoftware shifts object C in such a way that the distance can become anappropriate value (a-α). In this way, a graphic shown in FIG. 33C isobtained.

[0190] Although in the examples shown in FIGS. 32 and 33, it isconfirmed that a deletion process is executed when a target object isdropped in a predetermined area, the editing method of the secondembodiment is not limited to this. For example, as shown in FIGS. 34A-34C, the system can also be configured in such a way that an objectcan be automatically deleted if aa target object in a graphic is movedto a position farther away from the graphic than a prescribed distanceL.

[0191]FIG. 35A shows an example of the object information table of thesecond embodiment. An object information table stores positioncoordinates where each object is displayed, information for indicatingthe shape of each object, etc. As “coordinates”, absolute coordinates inthe upper left corner of each object or at the center coordinates ofeach object are stored. For “shape”, basically, information foridentifying a graphic component provided by application software isused. Application software provides, for example, a rectangle, adiamond, a circle, etc. Furthermore, as specific information forindicating the shape of each object, the “height”, “width”, etc., of anobject are stored.

[0192]FIG. 35B shows an example of the line information table of thesecond embodiment. A line information table stores a position where eachline is plotted, information for specifying the shape and informationfor indicating the connection order among objects. “Start pointcoordinates” and “end point coordinates” are the coordinates at thestart point and end point of each line, respectively. “Frontinformation” and “rear information” are the same as those described inthe first embodiment, which are information for specifying objectsconnected ahead of each line and information for specifying objectsconnected behind each line, respectively. The cross point of each lineand its front side object is “start coordinates”. The cross point ofeach line and its rear side object is “end coordinates”. Furthermore,“height” indicates the difference in the Y-coordinate between the startand end points of each line.

[0193] The flow of a plurality of objects is managed using this lineinformation table. For example, in a table shown in FIG. 35B, it isregistered that object B is subordinate to object A and that object C issubordinate to object B.

[0194]FIG. 36 is a flowchart showing the operation of the graphicediting software of the second embodiment. The process shown by thisflowchart is executed when a user drags a target object. A case whereobject B is deleted is described below with reference to FIGS. 32 and33.

[0195] In step S101, the graphic editing software tracks and detects theposition of an object dragged by a user. In step S102, the softwaredetects a position where the object is dropped and checks whether theobject overlaps a discard area. The graphic editing software recognizesthe display position of the discard area. Then, if the object overlapsthe discard area, the flow proceeds to step S103. On the other hand, ifthe object does not overlap the discard area, in step S110, the softwareplots the object. Step S110 corresponds to a so-called “move” process.

[0196] In step S103, the graphic editing software refers to an objectinformation table and obtains the “height” of the object dropped in thediscard area. In step S104, the software refers to a line informationtable and obtains the “height” of each line connected to the objectdropped in the discard area. In the examples shown in FIGS. 32 or 33,“BH (height of object B)” is obtained by the process in step S103, and“DH (height of line D)” and “EH (height of line E)” are obtained by theprocess in step S104.

[0197] In step S105, the graphic editing software calculates the totalvalue of “heights” obtained in step s103 and S104, and checks whetherthe total value is equal to or less than a predetermined thresholdvalue. Then, if the total value is larger than the threshold value, instep S106, the software updates the coordinates of objects connectedbelow the object dropped in the discard area. The updated coordinatesare registered in the object information table. If the total value isequal to the threshold value or less, step S106 is skipped.

[0198] In step S107, the graphic editing software generates lineinformation about a line connecting between an object located above thetarget object and an object located below the target object. In thisway, for example, a line with “front information= object A” and “rearinformation=object C” is registered in the line information table. Instep S108, in the object information table, a record corresponding tothe object dropped in the discard area is deleted. Then, in step S109,the software plots a graphic according to the object information tableand line information table.

[0199] The flowchart shown in FIG. 36 indicates a case where a deletionprocess is executed by checking whether a target object has been droppedin the discard area. However, if a deletion process is executed bychecking whether a target object is moved farther away from a graphicthan a predetermined distance, a step of checking whether the distancebetween the moved object and the graphic exceeds the prescribed distancecan be set instead of step S102.

[0200] In the examples of the first and second embodiments, thedescription has been given using a flowchart as an example of a graphicto be edited. However, the present invention is not limited to this, andincludes a method of editing a graphic, etc., in which a plurality ofobjects are connected or linked by lines or connectors. For example, thepresent invention is also applicable to a method of creating or editinga circuit diagram. In this case, each element composing a circuit is an“object” and a signal line connecting the elements is a “line”.

[0201] Furthermore, although FIGS. 32 and 33 show states where oneobject is connected above and below, respectively, an object to bedeleted, two or more objects can also be connected. This means that theflow is branched in the case of a flowchart and that two or moreelements are connected in the case of a circuit diagram. The connectionorders are also managed by the object information table and the lineinformation table shown in FIG. 35 and as in the connection orderdescribed above. In this case, a deletion process is executed while theconnection order is maintained.

[0202] The graphic editing function of the present invention isimplemented by enabling a computer to execute a program which describesthe process shown in the flowchart described above. FIG. 37 shows ablock diagram of a computer 100 for executing the program.

[0203] A CPU (central processing unit) 101 executes the program whichdescribes process shown in the flowchart by loading the program into amemory 103. For a storage device 102, for example, a hard disk is used,and the storage device 102 stores the program. For the memory 103, forexample, a semiconductor memory is used, and the memory 103 can be usedas the working area of the CPU 101. The variety of tables are generatedin this memory 103.

[0204] A storage medium driver 104 accesses a portable storage medium105 according to the instruction of the CPU 101. For the portablestorage medium 105, a semiconductor device, such as an IC card, etc., amedium to/from which information is inputted/outputted by a magneticfunction, such as a floppy disk, a magnetic disk, etc., and a mediumto/from which information is inputted/outputted by an optical function,such as an optical disk, etc., can be used. A communications controldevice 106 transmits/receives data to/from a network according to theinstruction of the CPU 101.

[0205]FIG. 38 shows how to provide the software program, etc., of thepresent invention. The programs of the present invention can beprovided, for example, by any of the following three methods,

[0206] A: The program, etc., is installed in the computer 100. In thiscase, the program, etc., is installed, for example, prior to shipment.

[0207] B: The program, etc., is stored in and provided to the portablestorage medium 105. In this case, the program, etc., stored in theportable storage medium is basically installed in the storage device 102via the storage medium driver 104.

[0208] C: The program, etc., is provided from a server in a network. Inthis case, the computer can obtain the program, etc., by downloading itfrom the server.

[0209] When a graphic, etc., is generated/edited using a computer whiledisplaying the graphic, etc., the process of deleting an object from agraphic which includes a plurality of objects connected with one anotheris simplified. Therefore, a user's load can be reduced and workefficiency can be improved. In addition, a possibility that an error mayoccur when a graphic, etc., is edited, can also be reduced.

What is claimed is:
 1. A graphic editing device, comprising: a displayunit displaying a graphic including a first object, a second object anda third object that are connected in series; and an editor deleting thesecond object and connecting the first and the third objects when thesecond object is selected.
 2. The graphic editing device according toclaim 1 , wherein said editor displays the third object in a positionwhere the second object used be displayed when the second object isselected and deleted.
 3. The graphic editing device according to claim 1, further comprising a coordinate system providing unit providing avirtual coordinate system in which each box is defined as an area fordisplaying an object, wherein said display unit displays each objectusing the virtual coordinate system and said editor locates each objectusing the virtual coordinate system.
 4. A graphic editing device,comprising: a display unit displaying a graphic including a plurality offirst objects, a second object connected to the plurality of firstobjects and a third object connected to the second object; and an editordeleting the second object and connecting each of the plurality of firstobjects and the third object when the second object is selected.
 5. Agraphic editing device, comprising: a display unit displaying a graphicincluding a first object, a plurality of second objects connected to thefirst object and a third object connected to the plurality of secondobjects; and an editor deleting the plurality of second objects andconnecting the first and third objects when the plurality of secondobjects are selected.
 6. A graphic editing device, comprising: a displayunit displaying a graphic including a plurality of first objects, asecond object connected to the plurality of first objects and aplurality of third objects connected to the second object; and an editordeleting the second object and connecting each of the plurality of firstobjects and each of the plurality of third objects when the secondobject is selected.
 7. A graphic editing device, comprising: a displayunit displaying a graphic including a first object, a second object anda third object that are connected in series; and an editor deleting thesecond object and connecting the first and third objects when the secondobject is moved to a predetermined area.
 8. A graphic editing device,comprising: a display unit displaying a graphic including a firstobject, a second object and a third object that are connected in series;and an editor deleting the second object and connecting the first andthird objects when the second object is moved to a specific relativeposition from a position of the graphic.
 9. The graphic editing deviceaccording to claim 7 , wherein said editor corrects a distance betweenthe first and third objects according to a predetermined condition. 10.The graphic editing device according to claim 7 , further comprising amanagement unit managing a sequence of the objects, said management unitmanages the third object as a subordinate object to the first object, ifthe second object is subordinate to the first object and the thirdobject is subordinate to the second object before the second object isdeleted.
 11. A graphic editing method, comprising: displaying a firstobject, a second object and a third object that are connected in series;and deleting the second object and connecting the first and thirdobjects when the second object is selected.
 12. A graphic editingmethod, comprising: displaying a first object, a second object and athird object that are connected in series; and deleting the secondobject and connecting the first and third objects when the second objectis moved to a predetermined area.
 13. A storage medium that stores aprogram executed by a computer, the program comprising: a program codeof displaying a graphic including a first object, a second object and athird object that are connected in series; and a program code deletingthe second object and connecting the first and third objects when thesecond object is selected.
 14. A storage medium that stores a programexecuted by a computer, the program comprising: a program code ofdisplaying a graphic including a first object, a second object and athird object that are connected in series; and a program code deletingthe second object and connecting the first and third objects when thesecond object is moved to a predetermined area.
 15. A graphic editingdevice, comprising: displaying means for displaying a graphic includinga first object, a second object and a third object that are connected inseries; and editing means for deleting the second object and connectingthe first and the third objects when the second object is selected. 16.A graphic editing device, comprising: displaying means for displaying agraphic including a first object, a second object and a third objectthat are connected in series; and editing means for deleting the secondobject and connecting the first and third objects when the second objectis moved to a predetermined area.